home *** CD-ROM | disk | FTP | other *** search
-
-
- SCANM
-
-
-
- Memory Scanning Utility
-
-
-
- Version 1.00
- Released 05-20-89
-
-
-
-
- Herron Software
- P.O. Box 1288
- Battle Ground, Washington 98604
-
-
-
-
- COPYRIGHT 1988, 1989 Phil Herron. ALL RIGHTS RESERVED.
-
-
- DISCLAIMER OF WARRANTY
- __________________________________________
-
-
- THIS PRODUCT IS LICENSED AS IS AND WITHOUT
- WARRANTY OF ANY KIND. THE AUTHOR MAKES NO
- EXPRESS OR IMPLIED WARRANTIES WITH REGARD
- TO THIS PRODUCT, INCLUDING BUT NOT LIMITED
- TO MERCHANTABILITY OR FITNESS FOR ANY
- PURPOSE. IN NO EVENT SHALL THE AUTHOR BE
- LIABLE FOR LOSS OF PROFIT OR ANY OTHER
- COMMERCIAL DAMAGE ARISING FROM EITHER THE
- USE OF OR THE INABILITY TO USE THIS PRODUCT.
-
-
- This product should be thoroughly evaluated
- using backed up or noncritical data and files.
-
-
-
-
-
- _________________________________________________________________
-
- Table of Contents Section
- _________________________________________________________________
-
- Shareware.................................................. 0.1.0
- What it is.............................................. 0.1.1
- License Terms........................................... 0.1.2
- Registration............................................ 0.1.3
-
- Evaluation................................................. 0.2.0
- Evaluation Version...................................... 0.2.1
- Evaluation Menu......................................... 0.2.2
- Virus Prevention........................................ 0.2.3
-
- ScanM...................................................... 1.0
- Introduction............................................ 1.1
- Explanation............................................. 1.2
- System Requirements..................................... 1.3
- Installing........................................... 1.3.1
- Help.................................................... 1.4
- Syntax.................................................. 1.5
- Examples................................................ 1.6
- Operating Screen........................................ 1.6.1
- Some Locations to scan.................................. 1.7
- Technical Notes......................................... 1.8
- Segmented Memory Addressing.......................... 1.8.1
- Address Conversion - Logical to Physical............. 1.8.2
- Address Conversion - Physical to Logical............. 1.8.3
- Version History......................................... 2.0
-
- Support.................................................... 9.0
- Problem Resolution...................................... 9.1
- Before Reporting........................................ 9.2
- Reporting a problem..................................... 9.3
- Custom Modifications.................................... 9.4
- Correspondence.......................................... 9.5
-
- Product Catalog........................................... 10.0
-
-
-
-
- _________________________________________________________________
-
- 0.1.0 Shareware
- _________________________________________________________________
-
-
-
-
- 0.1.1 The SHAREWARE Concept
- _____________________________
-
- "Shareware" is a software distribution method which enables
- the potential user to obtain software at very low initial
- cost, for evaluation on a trial basis.
-
- You can evaluate the software in your own environment, on your
- own machine, with the programs and data that you normally use.
- You're not required to make payment and become a registered
- user unless the software meets your needs.
-
- Another benefit of Shareware is lower pricing. By minimizing
- the marketing and advertising expenses associated with more
- traditional software distribution methods, Shareware products
- can be priced lower. You don't pay for what you don't need or
- use.
-
- You are encouraged to share the evaluation version of this
- software with others, so long as you follow the limitations
- set forth in the LICENSE TERMS section below.
-
-
-
-
- 0.1.2 LICENSE TERMS
- _____________________
-
- This product and its documentation are copyrighted and owned
- solely by the author, who reserves all rights to any benefits
- derived from it. It is distinctly separate from, and should
- not be confused with, those categories of software known as
- "public domain" or "freeware."
-
- You are granted without charge a limited license to use the
- evaluation version of this software on a trial basis, for
- purposes of deciding whether to continue using (and therefore
- whether to register) the product, and to transmit this
- evaluation version to associates by copying on diskette or
- uploading to electronic bulletin board services, so long as
- the following CONDITIONS are met:
-
- (a) The program and its documentation file must be
- distributed together.
-
- (b) The program and its documentation must not be
- altered in any way. If you wish to include
- notes for other evaluators, please add them in
- a separate file and include that file along
- with the program and documentation files.
-
-
-
-
- 0.1.3 REGISTRATION
- ____________________
-
- When you send in the registration form and fee, you'll
- receive by return mail a diskette containing the latest
- REGISTERED version of the program and documentation.
-
-
- BENEFITS OF REGISTRATION
-
- The registered version WILL NOT include the Evaluation Menu
- front-end or the forms-printing section of this version.
- Thus it will be more convenient to use, from either the DOS
- prompt or from batch files. It will also be about 16K
- bytes smaller, for more efficient disk storage and faster
- loading.
-
- The registered version WILL include any new functions
- or enhancements made to date.
-
- You will receive notification of future updates and
- new products.
-
- You will be able to upgrade to newer versions at a
- reduced cost.
-
-
- REGISTRATION FORM
-
- The registration form and a pre-addressed mailing cover
- can be printed from the "Forms Printing" selection of
- the Evaluation menu, discussed in section 0.2.2 below.
-
-
- FEES
-
- The single-quantity registration fee is displayed on the
- initial Evaluation Menu screen. Higher quantities are
- discussed below.
-
-
- QUANTITY DISCOUNTS
-
- Each registered copy of this software will be licensed for
- operation at only one location (on only one machine) at any
- one time. If this software will be in use at more than one
- location at the same time, the appropriate number of
- registrations must be made.
-
- Multiple-quantity registration fees are displayed in the
- "QUANTITY DISCOUNT" section of the Evaluation menu.
-
- You can take advantage of quantity discounts by ordering
- multiple registrations of one program or single
- registrations of several different programs at the same
- time. You also save on shipping and handling charges
- by registering several products together.
-
-
- GROUP REGISTRATIONS
-
- You can also get quantity discounts by combining orders with
- associates:
-
- (1) Complete a separate registration form for each person.
- Each person's name, address and programs to be
- registered are needed for support and update
- notification purposes.
-
- (2) Include only one standard shipping and handling charge.
- Cross out the "Shipping & handling" amounts on
- all but one registration form; the combined
- order will be sent to the name and address on
- that form.
-
- (3) Send all the forms together in one envelope or mailing
- cover, with a single check or money order.
-
-
-
-
- _________________________________________________________________
-
- 0.2.0 Evaluation
- _________________________________________________________________
-
-
-
-
- 0.2.1 EVALUATION VERSION
- __________________________
-
- This software contains the complete and fully functional version
- of the program, the latest available at the time of this release.
-
- The program itself is identical to the REGISTERED version.
- An Evaluation Menu and forms-printing section were added
- to ensure that:
-
- (a) Registration information and forms will not
- become separated from the program file.
-
- (b) Users who might be unfamiliar with the process
- of displaying a file's contents on the screen or
- printer will have no difficulty learning about,
- evaluating or registering this product.
-
-
-
-
- 0.2.2 EVALUATION MENU
- _______________________
-
- The program is invoked from the DOS prompt by typing its name
- and pressing the RETURN or ENTER key.
-
-
- The initial screen displays the warranty section and some
- information about the program:
-
- Program name,
- Version number,
- Release date,
- Single-quantity registration fee.
-
-
- It next displays the Shareware Product EVALUATION MENU.
- A single key press will select the following functions
- from the menu:
- _________________________________________
-
- ESC - EXIT to DOS without evaluating this program
-
- R - READ the documentation (THIS file)
-
- x - EVALUATE this program
-
- Q - QUANTITY Discount information
-
- F - FORMS printing menu - registration & mailer
- _________________________________________
-
-
- When you press "R" to READ the documentation, this file will
- be shown one screen at a time. The display pauses whenever the
- screen becomes full, and prompts...
-
- <downArrow> or Esc
-
- The <downArrow> character is similar to the "MORE" prompt in
- other DOS utilities. It indicates that more is available.
- Press ESCape to exit back to the Evaluation Menu, or any normal
- typing key to continue (space bar is a convenient key to use).
-
-
-
-
- 0.2.3 VIRUS PREVENTION
- ________________________
-
- If you'd like to evaluate this software but you're not sure
- where it's been, you can get a copy straight from the source
- for a $4.00 charge to cover the cost of the diskette, shipping
- and handling. If your address is outside the U.S. and Canada,
- add an additional $3.00 (total $7.00, in U.S. funds).
-
- Include your mailing address and the name of the program.
- By return mail you'll receive the latest evaluation version
- of that program and as many others as will fit on a 5.25
- inch diskette.
-
-
-
-
- ______________________________________________________________
-
- ScanM
- 1.0
- Memory Scanning Utility
- ______________________________________________________________
-
-
-
-
- 1.1 INTRODUCTION
- __________________
-
- You'd like to scan through your system's memory space for
- copyrights and other readable text, but either you don't have
- the DOS DEBUG utility or you don't have the patience to use it.
-
- Even if you do, you'll still have to manually scan over many
- screens of data to find all the text.
-
-
-
-
- 1.2 EXPLANATION
- _________________
-
- ScanM is designed for easily viewing the printable ASCII text
- characters within your system's memory space, while filtering out
- control (ASCII values below 32 decimal) and extended characters
- (ASCII values above 127 decimal).
-
- ScanM displays any strings of standard ASCII characters that is
- four or more characters in length.
-
- Strings found are displayed down the left side of the screen, one
- string per line. Spreading out the strings in this manner eases
- the task of picking the real information out of the nonsense text.
-
- ScanM pauses at the bottom of each screen, to allow you to
- continue scanning or to escape back to DOS. The down-arrow
- prompt indicates that more follows; press ESCAPE to terminate,
- or any OTHER key to continue.
-
-
-
-
-
- 1.3 SYSTEM REQUIREMENTS
- ___________________________
-
- PC, XT, AT or compatible.
- DOS version 2.1 or later.
- 64K free memory.
-
-
-
-
- 1.3.1 INSTALLING
- __________________
-
- The program can be run from diskette or from hard disk.
- No installation is necessary, other than copying the files
- to a drive and directory of your choosing.
-
-
-
-
- 1.4 HELP
- __________
-
- Can't remember the command line syntax?
- Issue the program's name without any parameters; it
- will display a help screen, then return to the DOS prompt.
-
-
-
-
- 1.5 SYNTAX
- ____________
-
-
- ScanM [[startSeg][:startOfs]] [[endSeg][:endOfs]]
-
-
- Where...
- startSeg = Memory segment to begin scan
-
- startOfs = Offset within segment to begin scan
- If not specified, defaults to 0000 hex.
- endSeg = Memory segment to end scan
- If not specified, defaults to FFFF hex.
- endOfs = Offset within segment to end scan
- If not specified, defaults to 000F hex.
-
- All parameters must be in hexadecimal (base 16).
-
-
-
-
- 1.6 EXAMPLES
- ______________
-
- ScanM F600 scans from F600:0000 to top of memory space
- ScanM F600:A scans from F600:000A to top of memory space
- ScanM F600 F800 scans from F600:0000 to F800:0000
- ScanM F600:A F800 scans from F600:000A to F800:0000
- ScanM F600:A F800:C scans from F600:000A to F800:000C
-
- Top of memory space is physical location FFFFF hex (1,048,575
- decimal). The following logical addresses, among others,
- point to the top physical address:
-
- FFFF:000F
- FFF0:00FF
- FF00:0FFF
- F000:FFFF
-
- See the TECHNICAL NOTES section below for further explanation.
-
-
-
-
- 1.6.1 OPERATING SCREEN
- ________________________
-
- The operating screen appears whenever "ScanM" is issued from
- the DOS prompt with a file specification; in this example,
- the complete command line is:
-
- ScanM C800
-
- which scans the area beginning at the hard disk controller ROM.
- The screen display is:
-
- __ScanM_______________________
- |______________________________|
-
- Scan range C800:0000 to FFFF:000F
- \ \
- beginning ending
- address address
-
-
- C800:08 (C) Copyright 1984 Western Digital Corporation
- C81E:03 SQRUWV
- C81F \ \
- \ \ Text string found at this address
- \ Offset
- \
- Segment
-
- A running display of the segment being scanned is maintained
- on screen; whenever a text string of 4 or more characters is
- encountered, the starting offset and the string are displayed.
-
- Only a two-digit offset is displayed; SCANM keeps
- it normalized within the range 00 through 0F hex.
-
-
-
-
- 1.7 SOME LOCATIONS TO SCAN
- ____________________________
-
- Long pauses between groups of text strings are normal when
- scanning large areas of memory space; the area could contain
- junk or program code, or might not have any RAM or ROM devices
- assigned to it.
-
- For example, C800:0000 appears to be the standard location for
- the first hard disk's controller ROM. If your system does not
- have a hard disk controller installed, then that area will
- obviously not contain any intelligible text strings.
-
-
- Memory map for some PC-Compatibles:
-
- Segment Used for
- ------- ---------------------------------------------
- F000 ROM area - diagnostics, BIOS
- E000 ROM area - usually empty
- D000 ROM area - usually empty
- C000 ROM area - hard disk controllers
- B000 Display RAM (mono at B000, CGA at B800)
- A000 Display RAM expansion (EGA)
- 9000 User RAM, high end
- 8000 .
- 7000 .
- 6000 .
- 5000 .
- 4000 .
- 3000 .
- 2000 .
- 1000 .
- 0000 User RAM, low end
-
-
- USER RAM
-
- There's probably little reason, other than curiosity, to
- scan the lower regions of the memory space for text strings.
- The contents of RAM change depending on the program you are
- currently running.
-
- The locations below segment address A000 will all contain
- RAM, if you have 640KB of RAM installed; otherwise, some
- of them will be empty.
-
-
- DISPLAY RAM
-
- The display memory areas of A000 and B000 will contain RAM
- only for the particular video adapter installed in your
- system.
-
-
- ROM AREAS
-
- Areas containing ROM (the system's "firmware") will contain
- copyright notices and software version information from the
- manufacturers who programmed that particular ROM.
-
- Typical ZENITH ROM areas
- ------------------------
- F800:0 thru FFFF:F BIOS ROM ( 32K )
- F400:0 thru F800:0 Reserved for ROM ( 16K )
- C800:0 thru C9FF:F Hard disk controller ROM ( 8K )
-
- Typical IBM ROM areas
- ---------------------
- FE00:0 BIOS ROM ( 8K )
- F600:0 BASIC ROM ( 32K )
- F400:0 Reserved 8K for ROM
- E000:0 PCjr ROM packs
- D000:0 " "
- C800:0 Hard disk controller ROM
-
-
-
-
- 1.8 TECHNICAL NOTES
- _____________________
-
-
- 1.8.1 SEGMENTED MEMORY ADDRESSING
- ___________________________
-
- The Intel 8086/8088 devices can address a million (1024K)
- physical memory locations. The newer 80286 and 80386 devices
- are limited to addressing the same number of locations when
- operated in 8086 compatibility mode, also known as "real" mode,
- under DOS version 3.0 and later.
-
-
- Addressing a million locations requires 20 bits (2^20 =
- 1,048,576 decimal), but the internal registers of the
- 8086/8088 are only 16 bits wide.
-
- This shortage of bits is remedied by splitting up physical
- memory addresses into segment addresses and offset addresses.
- During program memory references, the contents of the segment
- register are shifted left by four bits and added to the offset
- to form a 20-bit memory address that can directly access 1024KB
- of memory.
-
-
-
- 1.8.2 ADDRESS CONVERSION - Logical to Physical
- __________________
-
- Segmented (logical) address to 20-bit physical address...
-
- Multiply the Segment by 10 hex (same as shifting left by
- one hex digit or four binary digits), then add the Offset.
-
- Example - Segment:Offset is FFFF:000F
-
- Multiply Seg by 10h FFFF x 10 = FFFF0
- Add Offset + 000F
- --------
- Resulting 20-bit address is FFFFF.
-
-
-
- 1.8.3 ADDRESS CONVERSION - Physical to Logical
- __________________
-
- 20-bit physical address to Segmented address...
-
- Offset:
- Pick any convenient value. The offset can be up to
- four hex digits (16 bits), so it can range from 0000
- to FFFF. However it can't be larger than the physical
- address, and its LSD (least-significant digit) should
- be the same as the LSD of the physical address for
- this nefarious scheme to work correctly.
-
- Segment:
- Subtract the offset from the physical address, then
- divide the result by 10 hex.
-
- Example - physical address is FFFFF
-
- Select an offset of FFFF
- Subtract the offset
- from the phys.address FFFFF - FFFF = F0000
- Divide the above
- result by 10 h F0000 / 10 = F000
- Result is F000:FFFF
-
- Notice that a given physical address may convert to
- various segmented addresses, depending on the offset
- chosen. The following logical addresses all point to
- physical address FFFFF.
-
- FFFF:000F
- FFF0:00FF
- FF00:0FFF
- F000:FFFF
-
-
-
-
- 2.0 VERSION HISTORY
- _____________________
-
- 1.00 Initial release.
-
-
-
-
- _________________________________________________________________
-
- 9.0 Support
- _________________________________________________________________
-
-
-
-
- 9.1 PROBLEM RESOLUTION
- ________________________
-
- Please document and report any anomaly in program operation,
- whether it's a genuine "bug" or just some feature of the
- program that particularly "bugs" you.
-
- If you're the first person to document and report a problem
- that we agree needs attention, you'll receive a free upgrade
- with the correction when it's been made. If you're a
- registered user, you'll get the upgraded registered version;
- if you haven't yet registered, you'll get the upgraded
- evaluation version.
-
-
-
-
- 9.2 BEFORE REPORTING
- ______________________
-
- Things to try prior to reporting a problem:
-
- 1 - Reread the documentation to make sure you understand
- what we thought we understood when we wrote it.
-
- 2 - If the system reports "Bad command or file name" when
- you attempt to run the program, its executable file
- (or at least the file name you specified) was not found.
-
- First, make sure no typos or misspellings have crept
- into your command line; next, try changing your PATH
- setting, or make the drive & directory where the program
- resides the "current" drive & directory.
-
- 3 - If the program is being run from a batch file, try
- deleting lines previous to the line that actually
- invokes the program, to see if some prior activity
- is causing the problem.
-
- 4 - If you have any memory-resident or "TSR" utilities
- installed (pop-up calculators/note pads, keyboard
- enhancements, etc.), try removing them from memory
- and running the program again to see if the problem
- reoccurs.
-
-
-
-
- 9.3 REPORTING A PROBLEM
- _________________________
-
- If the problem persists, please document it as completely and
- accurately as possible; we have to be able to duplicate it
- before we can begin to resolve it.
-
- Include at least the following:
-
- 1 - Version of DOS you are using.
- 2 - Machine type, drives, memory, etc.
- 3 - Programs executed prior to the problem.
- 4 - Problem program's name and version number.
- 5 - Where and how you obtained the problem program.
- 6 - Address and/or phone number where you can be contacted.
- 7 - Anything you can think of that might relate to the problem;
- for example, listings of your AUTOEXEC.BAT and CONFIG.SYS
- files, or any batch files used to run the program.
- 8 - Any relevant printouts.
-
-
- NOTE: If you're a registered user, you'll find the utility
- UserResp.Exe on the distribution diskette; it can be used
- to print a pre-addressed mailer and a problem report.
-
- If you have not yet registered, send problem reports to the
- address below (or print the pre-addressed mailer from the
- Evaluation Menu).
-
-
-
-
- 9.4 CUSTOM MODIFICATIONS
- __________________________
-
- If you need custom modifications to this software for your
- particular application, please write to the below address
- with complete details of your requirements.
-
-
-
-
- 9.5 CORRESPONDENCE
- ____________________
-
- We welcome any comments or suggestions you might have
- concerning improvements and future enhancements to this
- product. Send all correspondence to:
-
- Phil Herron
- P.O. Box 1288
- Battle Ground, Washington USA 98604
-
-
-
-
- _________________________________________________________________
-
- 10.0 Product Catalog
- _________________________________________________________________
-
-
- This section contains a list of products available or near
- completion as of this release date; it will be updated
- whenever new products are added.
-
-
-
- ChkD - Drive Total/Free/Used report by value & percent
- ChkM - Memory Total/Free/Used report by value & percent
- CleanOut - Selective file deletion, with confirmation
- CleanTxt - WordStar to Ascii convert, ctrl char strip, tab expand
- CleanZ - Ctrl-Z End Of File char strip or replace
- FindF - Find File(s) in any directory of current drive
- Gen - Generate files for testing printer, storage or timing
- KeySet - CapsLock-NumLock-ScrollLock-PrtSc key setup
- PrinTest - Parallel Printer Test & Status reporting
- Qscn - Convert text to executable file for Quick Screen display.
- ScanF - Scan File for text strings
- ScanM - Scan Memory for text strings
- Split - File splitter
- StoRm - STorage RooM needed for files on any disk/any DOS ver.
-
- _______________________________________________________________
- | |
- | COPYRIGHT 1989 Phil Herron. ALL RIGHTS RESERVED. |
- |_______________________________________________________________|
-